package com.mlc.core.service;

import com.mlc.core.dto.RequestDto;
import com.mlc.data.entity.Users;

import java.util.List;

/**
 * @author FireWang
 * @date 2022/03/14 02:43:39
 */
public interface UsersService {

    /**
     * 获取所有列表
     *
     * @return
     * @throws Exception
     */
    List<Users> getAll() throws Exception;

    /**
     * 根据id获取
     *
     * @param id
     * @return
     */
     Users getById(Integer id) throws Exception;

    /**
     * 新建
     *
     * @param loginDto
     * @return
     */
    Users insert(RequestDto loginDto) throws Exception;

    /**
     * 更新
     *
     * @param users
     * @return
     */
    void update(Users users) throws Exception;

    /**
     * 根据id删除
     *
     * @param id
     * @return
     */
    void deleteById(Integer id) throws Exception;

    /**
     * 根据openId获取
     *
     * @param loginDto
     * @return
     */
    Users exist(RequestDto loginDto) throws Exception;

    /**
     * 增加用户积分
     *
     * @param userId    用户Id
     * @param bonusPoints   增加的积分数
     * @returnB
     */
    void increaseBonusPoints(int userId, int bonusPoints) throws Exception;
}